package org.demo.szml.userservice.repository;

import org.demo.szml.userservice.repository.po.UsersPO;

import java.util.List;

/**
 * @description: 用户仓储服务接口
 * @date: 2025/6/13 21:18
 * @version: 1.0
 */
public interface IUserRepository {
    /** 保存新用户
     * @param user 用户信息
     * @return 插入成功后的用户ID 如不成功为null
     */
    Long saveNewUser(UsersPO user);

    /** 获得用户密码
     * @param username 用户名
     * @return 用户密码信息 为空说明用户不存在
     */
    UsersPO selectUserPassword(String username);

    /** 获取用户信息
     * @param userIds 用户ID
     * @return 用户信息 为空说明用户不存在
     */
    List<UsersPO> getUserInfoById(List<Long> userIds);

    /** 修改用户信息
     * @param user 用户信息
     * @return 修改成功数量
     */
    int modifyUserInfo(UsersPO user);
}
